home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gigantic Games 2
/
Gigantic Games 2.iso
/
pc
/
_h_
/
history_of_arkas
/
arkos.amos
/
arkos.amosSourceCode
next >
Wrap
AMOS Source Code
|
1994-12-23
|
62KB
|
1,842 lines
Set Buffer 40 : Close Editor : Close Workbench
Screen Open 0,320,200,16,Lowres : Curs Off
Dim R(8000),N(29),D$(13),HERO$(9),TIME(9),RO(9),DI(9),A$(4),B$(4),C$(4)
Dim GOBA(9),DWAA(9),ELVA(9),MENA(9),GOA(9),DWA(9),ELA(9),MEA(9)
Dim GA(18),DA(18),EA(18),MA(18),G(18),D(18),E(18),M(18)
Global A$(),B$(),C$(),D$(),R,R(),N(),TIME,HERO,D,DI(),OP,TIME(),RO(),REC,DEF,D()
Global GOBA(),DWAA(),ELVA(),MENA(),GOA(),DWA(),ELA(),MEA()
Global GA(),DA(),EA(),MA(),G(),D(),E(),M(),GOP,DWP,ELP,MEP
Global GOB,DWA,ELV,MEN,HERO$(),TIME,DAY,GW,GL,DW,DL,EW,EL,MW,ML,BLIP
Proc SETUP
Procedure SETUP
S=Start(5) : For A=1 To 8000 : R(A)=Peek(S+A+1) : Next A : R(2440)=19 : R(3220)=19 : R(7144)=18 : R(4176)=18 : R(4177)=18 : Limit Mouse
Default Palette $0,$0,$46F,$89F,$FF0,$FA0,$F0,$A0,$999,$555,$AAA,$373,$773,$337,$737,$FB8,$0,$0,$46F,$89F,$FF0,$FA0,$F0,$A0,$999,$555,$AAA,$373,$773,$337,$737,$FB8
Screen Open 0,320,200,16,Lowres : Curs Off : Flash Off : Cls 4 : Get Disc Fonts : Get Fonts : Set Font 3 : Ink 0,3
Box 10,10 To 159,99 : Ink 3 : Paint 11,11,1 : Ink 0,3
Box 161,10 To 310,99 : Ink 3 : Paint 162,11,1 : Ink 0,3
Box 10,101 To 159,190 : Ink 3 : Paint 11,102,1 : Ink 0,3
Box 161,101 To 310,190 : Ink 3 : Paint 162,102,1 : Ink 0,3
Bob 1,63,38,128 : Bob 2,220,33,127 : Bob 3,63,125,125 : Bob 4,220,140,126
Set Text 2 : Text 54,92,"MEN" : Text 200,92,"ELVES" : Text 37,180,"GOBLINS" : Text 181,180,"DWARVES"
Reserve Zone(4) : Set Zone 1,138,60 To 286,148 : Set Zone 2,289,60 To 437,148
Set Zone 3,138,151 To 286,240 : Set Zone 4,289,151 To 437,240
RACE:
X=X Mouse : Y=Y Mouse : M=Mouse Key : Z=Zone(X,Y)
If M=0 or Z=0 Then Goto RACE
If Z=1 Then MEN=1
If Z=2 Then ELV=1
If Z=3 Then GOB=1
If Z=4 Then DWA=1
For A=1 To 96 : Read B : Hot Spot A,0,B : Next A
Data 0,0,0,14,14,14,14,14,14,14,14,14,14,14,14,14,14,0,0,24,14,14,4,4
Data 0,0,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,36,21,21,6,6
Data 0,0,0,27,27,27,27,27,27,27,27,27,27,27,27,27,27,0,0,42,27,27,7,7
Data 0,0,0,55,55,55,55,55,55,56,56,56,55,55,55,55,56,0,0,66,56,55,14,14
Screen Open 0,320,120,16,Lowres : Flash Off : Curs Off : Screen Open 1,640,120,16,Hires : Screen Display 1,130,170,,
Flash Off : Curs Off : Set Font 1 : Ink 3 : Bar 0,0 To 640,114 : Wait 10 : Limit Mouse 128,170 To 640,290
D=1 : HERO=1 : DAY=1 : TIME=8
For A=1 To 8 : DI(A)=1 : TIME(A)=8 : Next
For A=1 To 3 : GA(A)=5000 : DA(A)=5000 : EA(A)=5000 : MA(A)=5000 : Next A
For A=4 To 8 : GA(A)=3000 : DA(A)=3000 : EA(A)=3000 : MA(A)=3000 : Next A
For A=9 To 18 : GA(A)=2000 : DA(A)=2000 : EA(A)=2000 : MA(A)=2000 : Next A
For A=1 To 18 : Read G(A) : Next A
For A=1 To 18 : Read D(A) : Next A
For A=1 To 18 : Read E(A) : Next A
For A=1 To 18 : Read M(A) : Next A
Data 917,2408,1937,2119,3236,1210,2914,2233,912,1417,2624,2529,2010,3327,3412,2941,1843,2347
Data 1661,1385,4187,1256,1773,2788,3158,3369,860,1170,2088,2279,2365,3161,3577,3183,3690,1854
Data 6915,5639,6860,5410,5024,4540,5953,6733,4414,5115,6310,6421,5726,5033,5045,5554,6445,7151
Data 5263,7177,5692,4055,4363,5080,6171,6686,4757,5170,4673,4175,5288,5986,5775,5582,5865,6579
For A=1 To 9
If GOB=1 Then RO(A)=G(A) : GOBA(A)=G(A)
If DWA=1 Then RO(A)=D(A) : DWAA(A)=D(A)
If ELV=1 Then RO(A)=E(A) : ELVA(A)=E(A)
If MEN=1 Then RO(A)=M(A) : MENA(A)=M(A)
Next A
R=RO(1)
If GOB=1 Then Restore GNAME
If DWA=1 Then Restore DNAME
If ELV=1 Then Restore ENAME
If MEN=1 Then Restore MNAME
For A=1 To 8 : Read HERO$(A) : Next A
GNAME:
Data "HAGMAR","GROISH","BLAGMAR","HODOS","DARROK","MISHNIC","TULKAS","HARROG"
DNAME:
Data "GWAIN","DORIOS","MORION","LAIN","RINGO","GELFIN","RAGNOR","FALOG"
ENAME:
Data "ELROS","NAYLOR","TOROS","ETHROL","FARION","PETRO","ARLON","FARAGIN"
MNAME:
Data "CANTOR","KRODOR","SANTOS","CELMAC","HARRON","BREDIR","HODIN","TARRON"
GOBS:
If GOB=1 Then Goto DWAS
GOBA(1)=G(9) : A=GA(9)/4 : GOA(1)=GOA(1)+(GA(9)-A) : GA(9)=A
GOBA(4)=G(6) : A=GA(6)/4 : GOA(4)=GOA(4)+(GA(6)-A) : GA(6)=A
GOBA(7)=G(16) : A=GA(17)/4 : GOA(7)=GOA(7)+(GA(17)-A) : GA(17)=A
DWAS:
If DWA=1 Then Goto ELAS
DWAA(1)=D(10) : A=DA(10)/4 : DWA(1)=DWA(1)+(DA(10)-A) : DA(10)=A
DWAA(4)=D(6) : A=DA(6)/4 : DWA(4)=DWA(4)+(DA(6)-A) : DA(6)=A
DWAA(7)=D(7) : A=DA(7)/4 : DWA(7)=DWA(7)+(DA(7)-A) : DA(7)=A
ELAS:
If ELV=1 Then Goto MEAS
ELVA(1)=E(1) : A=EA(1)/4 : ELA(1)=ELA(1)+(EA(1)-A) : EA(1)=A
ELVA(4)=E(2) : A=EA(2)/4 : ELA(4)=ELA(4)+(EA(2)-A) : EA(2)=A
ELVA(7)=E(3) : A=EA(3)/4 : ELA(7)=ELA(7)+(EA(3)-A) : EA(3)=A
MEAS:
If MEN=1 Then Goto LETSGO
MENA(1)=M(1) : A=MA(1)/4 : MEA(1)=MEA(1)+(MA(1)-A) : MA(1)=A
MENA(4)=M(2) : A=MA(2)/4 : MEA(4)=MEA(4)+(MA(2)-A) : MA(2)=A
MENA(7)=M(3) : A=MA(3)/4 : MEA(7)=MEA(7)+(MA(3)-A) : MA(3)=A
LETSGO:
Ink 4 : Screen 0 : Randomize Timer : BLIP=1 : Proc MAIN
End Proc
Procedure MAIN
MAIN:
If OP=1 Then Proc SCR0
If OP=2 Then Proc SCR1
If OP=3 Then Proc NORTH
If OP=4 Then Proc SOUTH
If OP=5 Then Proc EAST
If OP=6 Then Proc WEST
If OP=7 Then Proc MOV
If OP=8 Then Proc NIGHT
If OP=9 Then Proc RECDEP
If OP=10 Then Proc BATTLE2
If OP=11 Then Proc BATTLE1
If OP=12 Then Proc MAP1
If OP=13 Then Proc MAP2
If OP=14 Then Proc OPTIONS
If OP=15 Then Proc STATUS
If OP=16 Then Proc KEEPIT
If OP=17 Then Proc FETCHIT
If OP>0 Then Goto MAIN
For A=1 To 8 : If TIME(A)<21 Then Goto MAIN1
Next A
OP=10 : Goto MAIN
MAIN1:
If D=1 Then OP=3
If D=2 Then OP=4
If D=3 Then OP=5
If D=4 Then OP=6
Goto MAIN
End Proc
Procedure NORTH
N(1)=R(R-403) : N(2)=R(R-402) : N(3)=R(R-401) : N(4)=R(R-400)
N(5)=R(R-399) : N(6)=R(R-398) : N(7)=R(R-397) : N(8)=R(R-303)
N(9)=R(R-302) : N(10)=R(R-301) : N(11)=R(R-300) : N(12)=R(R-299)
N(13)=R(R-298) : N(14)=R(R-297) : N(15)=R(R-202) : N(16)=R(R-201)
N(17)=R(R-200) : N(18)=R(R-199) : N(19)=R(R-198) : N(20)=R(R-101)
N(21)=R(R-100) : N(22)=R(R-99)
OP=1
GOP=0 : DWP=0 : ELP=0 : MEP=0
For A=1 To 18
If G(A)=R-100 Then GOP=1
If D(A)=R-100 Then DWP=1
If E(A)=R-100 Then ELP=1
If M(A)=R-100 Then MEP=1
Next A
For A=1 To 9
If GOBA(A)=R-100 Then GOP=2 : If GOA(A)<10 Then GOP=1
If DWAA(A)=R-100 Then DWP=2 : If DWA(A)<10 Then DWP=1
If ELVA(A)=R-100 Then ELP=2 : If ELA(A)<10 Then ELP=1
If MENA(A)=R-100 Then MEP=2 : If MEA(A)<10 Then MEP=1
Next A
End Proc
Procedure SOUTH
N(1)=R(R+403) : N(2)=R(R+402) : N(3)=R(R+401) : N(4)=R(R+400)
N(5)=R(R+399) : N(6)=R(R+398) : N(7)=R(R+397) : N(8)=R(R+303)
N(9)=R(R+302) : N(10)=R(R+301) : N(11)=R(R+300) : N(12)=R(R+299)
N(13)=R(R+298) : N(14)=R(R+297) : N(15)=R(R+202) : N(16)=R(R+201)
N(17)=R(R+200) : N(18)=R(R+199) : N(19)=R(R+198) : N(20)=R(R+101)
N(21)=R(R+100) : N(22)=R(R+99)
OP=1
GOP=0 : DWP=0 : ELP=0 : MEP=0
For A=1 To 9
If GOBA(A)=R+100 Then GOP=2 : If GOA(A)<10 Then GOP=1
If DWAA(A)=R+100 Then DWP=2 : If DWA(A)<10 Then DWP=1
If ELVA(A)=R+100 Then ELP=2 : If ELA(A)<10 Then ELP=1
If MENA(A)=R+100 Then MEP=2 : If MEA(A)<10 Then MEP=1
Next A
For A=1 To 18
If G(A)=R+100 Then GOP=1
If D(A)=R+100 Then DWP=1
If E(A)=R+100 Then ELP=1
If M(A)=R+100 Then MEP=1
Next A
End Proc
Procedure EAST
N(1)=R(R-296) : N(2)=R(R-196) : N(3)=R(R-96) : N(4)=R(R+4)
N(5)=R(R+104) : N(6)=R(R+204) : N(7)=R(R+304) : N(8)=R(R-297)
N(9)=R(R-197) : N(10)=R(R-97) : N(11)=R(R+3) : N(12)=R(R+103)
N(13)=R(R+203) : N(14)=R(R+303) : N(15)=R(R-198) : N(16)=R(R-98)
N(17)=R(R+2) : N(18)=R(R+102) : N(19)=R(R+202) : N(20)=R(R-99)
N(21)=R(R+1) : N(22)=R(R+101)
OP=1
GOP=0 : DWP=0 : ELP=0 : MEP=0
For A=1 To 9
If GOBA(A)=R+1 Then GOP=2 : If GOA(A)<10 Then GOP=1
If DWAA(A)=R+1 Then DWP=2 : If DWA(A)<10 Then DWP=1
If ELVA(A)=R+1 Then ELP=2 : If ELA(A)<10 Then ELP=1
If MENA(A)=R+1 Then MEP=2 : If MEA(A)<10 Then MEP=1
Next A
For A=1 To 18
If G(A)=R+1 Then GOP=1
If D(A)=R+1 Then DWP=1
If E(A)=R+1 Then ELP=1
If M(A)=R+1 Then MEP=1
Next A
End Proc
Procedure WEST
N(1)=R(R+296) : N(2)=R(R+196) : N(3)=R(R+96) : N(4)=R(R-4)
N(5)=R(R-104) : N(6)=R(R-204) : N(7)=R(R-304) : N(8)=R(R+297)
N(9)=R(R+197) : N(10)=R(R+97) : N(11)=R(R-3) : N(12)=R(R-103)
N(13)=R(R-203) : N(14)=R(R-303) : N(15)=R(R+198) : N(16)=R(R+98)
N(17)=R(R-2) : N(18)=R(R-102) : N(19)=R(R-202) : N(20)=R(R+99)
N(21)=R(R-1) : N(22)=R(R-101)
OP=1
GOP=0 : DWP=0 : ELP=0 : MEP=0
For A=1 To 9
If GOBA(A)=R-1 Then GOP=2 : If GOA(A)<10 Then GOP=1
If DWAA(A)=R-1 Then DWP=2 : If DWA(A)<10 Then DWP=1
If ELVA(A)=R-1 Then ELP=2 : If ELA(A)<10 Then ELP=1
If MENA(A)=R-1 Then MEP=2 : If MEA(A)<10 Then MEP=1
Next A
For A=1 To 18
If G(A)=R-1 Then GOP=1
If D(A)=R-1 Then DWP=1
If E(A)=R-1 Then ELP=1
If M(A)=R-1 Then MEP=1
Next A
End Proc
Procedure OPTIONS
Reserve Zone(19)
Set Zone 1,139,171 To 185,183 : Set Zone 2,139,185 To 185,197
Set Zone 3,139,199 To 185,211 : Set Zone 4,139,213 To 185,225
Set Zone 5,139,227 To 185,239 : Set Zone 6,139,241 To 185,253
Set Zone 7,139,255 To 185,267 : Set Zone 8,139,269 To 185,281
Set Zone 9,191,171 To 224,183 : Set Zone 10,191,185 To 224,197
Set Zone 11,191,199 To 238,211 : Set Zone 12,191,213 To 238,225
Set Zone 13,191,227 To 238,239 : Set Zone 14,191,255 To 238,267
Set Zone 15,191,269 To 238,281
Set Zone 16,267,190 To 280,212 : Set Zone 17,233,234 To 280,256
Set Zone 18,282,210 To 294,238 : Set Zone 19,254,210 To 266,238
OPTIONS:
A$=Inkey$
If A$="z" Then DAY=37 : For A=1 To 8 : TIME(A)=21 : TIME=21 : Next
Sprite Off : X=X Mouse : Y=Y Mouse : M=Mouse Key : Z=Zone(X,Y)
If RO(1)>0 and Z=1 Then Sprite 1,139,171,135
If RO(2)>0 and Z=2 Then Sprite 1,139,185,135
If RO(3)>0 and Z=3 Then Sprite 1,139,199,135
If RO(4)>0 and Z=4 Then Sprite 1,139,213,135
If RO(5)>0 and Z=5 Then Sprite 1,139,227,135
If RO(6)>0 and Z=6 Then Sprite 1,139,241,135
If RO(7)>0 and Z=7 Then Sprite 1,139,255,135
If RO(8)>0 and Z=8 Then Sprite 1,139,269,135
If Z=9 Then Sprite 1,191,171,135
If Z=10 Then Sprite 1,191,185,135
If REC=1 and Z=11 Then Sprite 1,191,199,135
If Z=12 Then Sprite 1,191,213,135
If Z=13 Then Sprite 1,191,227,135
If Z=14 Then Sprite 1,191,255,135
If Z=15 Then Sprite 1,191,269,135
If M>0 and RO(1)>0 and Z=1 Then A=1 : Gosub WHICH : HERO=1 : R=X2 : OP=0 : Goto WHICH1
If M>0 and RO(2)>0 and Z=2 Then A=2 : Gosub WHICH : HERO=2 : R=X2 : OP=0 : Goto WHICH1
If M>0 and RO(3)>0 and Z=3 Then A=3 : Gosub WHICH : HERO=3 : R=X2 : OP=0 : Goto WHICH1
If M>0 and RO(4)>0 and Z=4 Then A=4 : Gosub WHICH : HERO=4 : R=X2 : OP=0 : Goto WHICH1
If M>0 and RO(5)>0 and Z=5 Then A=5 : Gosub WHICH : HERO=5 : R=X2 : OP=0 : Goto WHICH1
If M>0 and RO(6)>0 and Z=6 Then A=6 : Gosub WHICH : HERO=6 : R=X2 : OP=0 : Goto WHICH1
If M>0 and RO(7)>0 and Z=7 Then A=7 : Gosub WHICH : HERO=7 : R=X2 : OP=0 : Goto WHICH1
If M>0 and RO(8)>0 and Z=8 Then A=8 : Gosub WHICH : HERO=8 : R=X2 : OP=0 : Goto WHICH1
If M>0 and Z=9 Then OP=12 : Goto O1
If M>0 and Z=10 Then OP=13 : Goto O1
If REC=1 and M>0 and Z=11 Then OP=9 : Goto O1
If M>0 and Z=12 Then OP=15 : Goto O1
If M>0 and Z=13 Then OP=0 : TIME=21 : Goto O1
If M>0 and Z=14 Then OP=17 : Goto O1
If M>0 and Z=15 Then OP=16 : Goto O1
If M>0 and Z=16 and D=1 Then OP=7 : Goto O1
If M>0 and Z=16 Then D=1 : OP=0 : Goto O1
If M>0 and Z=17 and D=2 Then OP=7 : Goto O1
If M>0 and Z=17 Then D=2 : OP=0 : Goto O1
If M>0 and Z=18 and D=3 Then OP=7 : Goto O1
If M>0 and Z=18 Then D=3 : OP=0 : Goto O1
If M>0 and Z=19 and D=4 Then OP=7 : Goto O1
If M>0 and Z=19 Then D=4 : OP=0 : Goto O1
Goto OPTIONS
WHICH:
RO(HERO)=R : X2=RO(A) : TIME(HERO)=TIME : DI(HERO)=D : Return
WHICH1:
R=RO(A) : TIME=TIME(HERO) : D=DI(HERO) : BLIP=1
O1:
Reserve Zone
Sprite Off
End Proc
Procedure SCR0
Autoback 1
Screen 0 : Fade 1 : Wait 30
For A=8 To 14 : N(A)=N(A)+24 : Next
For A=14 To 19 : N(A)=N(A)+48 : Next
For A=20 To 22 : N(A)=N(A)+72 : Next
For A=8 To 14 : Bob Off A : Next
For A=22 To 28 : Bob Off A : Next
For A=34 To 38 : Bob Off A : Next
For A=42 To 52 : Bob Off A : Next
I=1
If GOP=1 Then I=125
If DWP=1 Then I=126
If ELP=1 Then I=127
If MEP=1 Then I=128
If I>1 Then Bob 42,140,64,I
If GOP=2 or DWP=2 or ELP=2 or MEP=2 Then Goto J Else Goto L1
J:
If GOP=2 Then I=125
If DWP=2 Then I=126
If ELP=2 Then I=127
If MEP=2 Then I=128
B=10
For A=42 To 52
Bob A,B,64,I
Add B,40
Next A
L1:
E=20 : F=40 : G=137 : C=1 : S=8
If D=1 Then X=-403 : Y=-397
If D=2 Then X=403 : Y=397
If D=3 Then X=-296 : Y=304
If D=4 Then X=296 : Y=-304
Gosub ARMYPR
L2:
E=-22 : F=46 : G=138 : C=2 : S=22
If D=1 Then X=-303 : Y=-297
If D=2 Then X=303 : Y=297
If D=3 Then X=-297 : Y=303
If D=4 Then X=297 : Y=-303
Gosub ARMYPR
L3:
E=-18 : F=55 : G=139 : C=3 : S=34
If D=1 Then X=-202 : Y=-198
If D=2 Then X=202 : Y=198
If D=3 Then X=-198 : Y=202
If D=4 Then X=198 : Y=-202
Gosub ARMYPR
Bob 56,21,0,131 : Bob 57,113,0,130 : Bob 58,200,0,131
Bob 59,21,97,129 : Bob 60,113,97,132 : Bob 61,200,97,129
Bob 62,0,0,133 : Bob 63,288,0,134
Bob 1,20,46,N(1) : Bob 2,60,46,N(2) : Bob 3,100,46,N(3)
Bob 4,140,46,N(4) : Bob 5,180,46,N(5) : Bob 6,220,46,N(6)
Bob 7,260,46,N(7) : Bob 15,-22,52,N(8) : Bob 16,30,52,N(9)
Bob 17,82,52,N(10) : Bob 18,134,52,N(11) : Bob 19,186,52,N(12)
Bob 20,238,52,N(13) : Bob 21,290,52,N(14) : Bob 29,-18,61,N(15)
Bob 30,53,61,N(16) : Bob 31,124,61,N(17) : Bob 32,195,61,N(18)
Bob 33,266,61,N(19) : Bob 39,-54,74,N(20) : Bob 40,88,74,N(21)
Bob 41,230,74,N(22)
Goto L4
ARMYPR:
If D=1 Then H=1
If D=2 Then H=-1
If D=3 Then H=100
If D=4 Then H=-100
X=R+X : Y=R+Y
For B=X To Y Step H
For A=1 To 9
If R(B)<18 or R(B)>19 Then Goto K
If GOBA(A)=B and GOA(A)>10 or DWAA(A)=B and DWA(A)>10 or ELVA(A)=B and ELA(A)>10 or MENA(A)=B and MEA(A)>10 Then Bob S,E,F,G : Inc S
K:
Next A
If C=1 Then Add E,40
If C=2 Then Add E,52
If C=3 Then Add E,72
Next B
Return
L4:
If TIME<21 Then Ink 3
If TIME>20 Then Ink 1
Bar 20,20 To 300,45
If TIME<21 Then Ink 2 : Draw 20,45 To 300,45
Bob Draw : Fade 1 To 1 : Wait 15 : OP=2 : Screen 1
End Proc
Procedure SCR1
REC=0
For A=1 To 18
If GOB=1 Then X1=G(A)
If DWA=1 Then X1=D(A)
If ELV=1 Then X1=E(A)
If MEN=1 Then X1=M(A)
If R=X1 Then REC=1 : DEF=A
Next A
For A=1 To 100 Step 14 : Inc B : Ink 0,10
If BLIP=1 and RO(B)>0 Then Ink 9 : Bar 23,A+1 To 116,A+10 : Ink 0,9 : Text 25,A+8,HERO$(B) : Box 22,A To 117,A+11
Next A
If BLIP=1 Then Ink 9 : Bar 127,2 To 220,11 : Ink 0,9 : Text 129,9,"MAP1" : Box 126,1 To 221,12
If BLIP=1 Then Ink 9 : Bar 127,16 To 220,25 : Ink 0,9 : Text 129,23,"MAP2" : Box 126,15 To 221,26
If BLIP=1 Then Ink 9 : Bar 127,44 To 220,53 : Ink 0,9 : Text 129,51,"STATUS" : Box 126,43 To 221,54
If BLIP=1 Then Ink 9 : Bar 127,58 To 220,67 : Ink 0,9 : Text 129,65,"NIGHTIME" : Box 126,57 To 221,68
If REC=0 Then Ink 3 : Bar 126,29 To 221,40 : Ink 0
If REC=1 Then Ink 9 : Bar 127,30 To 220,39 : Ink 0,9 : Box 126,29 To 221,40 :
If REC=1 Then Text 129,37,"RECRUIT"
If BLIP=1 Then Ink 9 : Bar 127,86 To 220,95 : Ink 0,9 : Text 129,93,"LOAD GAME" : Box 126,85 To 221,96
If BLIP=1 Then Ink 9 : Bar 127,100 To 220,109 : Ink 0,9 : Text 129,107,"SAVE GAME" : Box 126,99 To 221,110
Paste Bob 250,18,97
If BLIP=1 Then Ink 9 : Bar 412,1 To 550,12
If D=1 Then X=R-100 : B$="NORTH"
If D=2 Then X=R+100 : B$="SOUTH"
If D=3 Then X=R+1 : B$="EAST"
If D=4 Then X=R-1 : B$="WEST"
A$="FACING "+B$
If Len(A$)<12 Then A=-5 : A$=" "+A$+" " Else A=0
Ink 0,9 : Text 420+A,9,A$ : Box 412,1 To 550,12
A$="DAY"+Str$(DAY)
If Len(A$)<6 Then A=-5 : A$=" "+A$ Else A=0
If BLIP=1 Then Ink 9 : Bar 443,15 To 528,26 : Ink 0,9 : Text 453+A,23,A$ : Box 443,15 To 528,26
If BLIP=1 Then Ink 9 : Bar 427,29 To 540,40 : Ink 0,9
If TIME<12 Then A$=Str$(TIME)+" AM "
If TIME>12 Then A$=Str$(TIME-12)+" PM "
If TIME=12 Then A$=" 12 PM "
A$="TIME"+A$
If Len(A$)<11 Then A=-5 : A$=" "+A$ Else A=0
Text 432+A,37,A$ : Box 427,29 To 540,40
If GOB=1 Then X1=GOA(HERO) : D$=" GOBLINS"
If DWA=1 Then X1=DWA(HERO) : D$=" DWARVES"
If ELV=1 Then X1=ELA(HERO) : D$=" ELVES"
If MEN=1 Then X1=MEA(HERO) : D$=" MEN"
A$=HERO$(HERO)+" HAS AN ARMY OF"
C$=Str$(X1)+D$
A=Len(A$) : If A<22 Then A=(22-A) : A=A*5 : Else A=0
B=Len(C$) : If B<22 Then B=(22-B) : B=B*5 : Else B=0
If BLIP=1 Then Ink 9 : Bar 366,43 To 600,68 : Ink 0,9 : Text 372+A,51,A$ : Text 372+B,65,C$ : Box 366,43 To 600,68
D$="" : A=1 : For B=1 To 18
If G(A)=X Then D$="A GOBLIN " : F$=Str$(GA(A)) : G$="GOBLINS" : B=20
If D(A)=X Then D$="A DWARVEN " : F$=Str$(DA(A)) : G$="DWARVES" : B=20
If E(A)=X Then D$="AN ELVEN " : F$=Str$(EA(A)) : G$="ELVES" : B=20
If M(A)=X Then D$="A HUMAN " : F$=Str$(MA(A)) : G$="HUMANS" : B=20
Inc A : Next B
If D$="" Then Goto NA
A$="TO HIS "+B$+" IS "+D$
If A<5 Then E$="CITY"
If A>4 and A<10 Then E$="TOWN"
If A>9 Then E$="VILLAGE"
E$=E$+" HOUSING"+F$+" "+G$
A=Len(E$) : If A<28 Then A=(28-A) : A=(A*5)-3 Else A=0
B=Len(A$) : If B<28 Then B=(28-B) : B=(B*5)+2 Else B=0
Ink 9 : Bar 340,71 To 627,96 : Ink 0,9 : Text 343+B,79,A$ : Text 343+A,93,E$ : Box 340,71 To 627,96
Goto NB
NA:
C$="" : For A=1 To 8
If GOBA(A)=X Then C$="A GOBLIN " : D$=Str$(GOA(A)+1)+" GOBLINS"
If DWAA(A)=X Then C$="A DWARVEN " : D$=Str$(DWA(A)+1)+" DWARVES"
If ELVA(A)=X Then C$="AN ELVEN " : D$=Str$(ELA(A)+1)+" ELVES"
If MENA(A)=X Then C$="A HUMAN " : D$=Str$(MEA(A)+1)+" MEN"
Next A
Ink 3 : Bar 340,71 To 627,96 : Wait Vbl
If C$="" Then Goto NB
A$="TO HIS "+B$+" IS "+C$
D$="ARMY OF"+D$
A=Len(A$) : If A<28 Then A=(28-A) : A=A*5 : Else A=0
B=Len(D$) : If B<28 Then B=(28-B) : B=B*5 : Else B=0
Ink 9 : Bar 340,71 To 627,96 : Ink 0,9 : Text 343+A,79,A$ : Text 343+B,93,D$ : Box 340,71 To 627,96
NB:
OP=14
BLIP=0
End Proc
Procedure STATUS
Ink 3 : Bar 224,0 To 640,114 : Ink 9
Bar 236,24 To 630,108 : Bar 334,13 To 630,24 : Ink 0,9
Text 240,33,"ATTACK"
X1=0 : X2=0 : X3=0 : X4=0
For A=1 To 9 : X1=X1+GOA(A)+1 : X2=X2+DWA(A)+1 : X3=X3+ELA(A)+1 : X4=X4+MEA(A)+1 : Next A
If GOB=1 Then X1=X1-1
If DWA=1 Then X2=X2-1
If ELV=1 Then X3=X3-1
If MEN=1 Then X4=X4-1
S1$=Str$(X1) : S2$=Str$(X2) : S3$=Str$(X3) : S4$=Str$(X4)
Text 337,33,S1$ : Text 410,33,S2$ : Text 482,33,S3$ : Text 554,33,S4$
Text 240,45,"DEFENCE"
X1=0 : X2=0 : X3=0 : X4=0
For A=1 To 18 : X1=X1+GA(A) : X2=X2+DA(A) : X3=X3+EA(A) : X4=X4+MA(A) : Next A
S1$=Str$(X1) : S2$=Str$(X2) : S3$=Str$(X3) : S4$=Str$(X4)
Text 337,45,S1$ : Text 410,45,S2$ : Text 482,45,S3$ : Text 554,45,S4$
Text 240,57,"CITIES"
X1=0 : X2=0 : X3=0 : X4=0
For A=1 To 3
If G(A)>0 Then X1=X1+1
If D(A)>0 Then X2=X2+1
If E(A)>0 Then X3=X3+1
If M(A)>0 Then X4=X4+1
Next A
S1$=Str$(X1) : S2$=Str$(X2) : S3$=Str$(X3) : S4$=Str$(X4)
Text 345,57,S1$ : Text 419,57,S2$ : Text 491,57,S3$ : Text 563,57,S4$
Text 240,69,"TOWNS"
X1=0 : X2=0 : X3=0 : X4=0
For A=4 To 8
If G(A)>0 Then X1=X1+1
If D(A)>0 Then X2=X2+1
If E(A)>0 Then X3=X3+1
If M(A)>0 Then X4=X4+1
Next A
S1$=Str$(X1) : S2$=Str$(X2) : S3$=Str$(X3) : S4$=Str$(X4)
Text 345,69,S1$ : Text 419,69,S2$ : Text 491,69,S3$ : Text 563,69,S4$
X1=0 : X2=0 : X3=0 : X4=0
Text 240,81,"VILLAGES"
For A=9 To 18
If G(A)>0 Then X1=X1+1
If D(A)>0 Then X2=X2+1
If E(A)>0 Then X3=X3+1
If M(A)>0 Then X4=X4+1
Next A
S1$=Str$(X1) : S2$=Str$(X2) : S3$=Str$(X3) : S4$=Str$(X4)
Text 345,81,S1$ : Text 419,81,S2$ : Text 491,81,S3$ : Text 563,81,S4$
Text 240,93,"VICTORIES"
S1$=Str$(GW) : S2$=Str$(DW) : S3$=Str$(EW) : S4$=Str$(MW)
Text 345,93,S1$ : Text 419,93,S2$ : Text 491,93,S3$ : Text 563,93,S4$
Text 240,105,"DEFEATS"
S1$=Str$(GL) : S2$=Str$(DL) : S3$=Str$(EL) : S4$=Str$(ML)
Text 345,105,S1$ : Text 419,105,S2$ : Text 491,105,S3$ : Text 563,105,S4$
Text 337,21,"GOBLINS" : Text 409,21,"DWARVES"
Text 492,21,"ELVES" : Text 573,21,"NEN"
For A=24 To 110 Step 12 : Draw 236,A To 630,A : Next A
Draw 236,24 To 236,108 : Draw 334,13 To 630,13
For A=334 To 630 Step 74 : Draw A,13 To A,108 : Next A
RB:
M=Mouse Key : If M=0 Then Goto RB
OP=2 : Sprite Off : Ink 3 : Bar 224,0 To 640,110 : BLIP=1
End Proc
Procedure NIGHT
For A=1 To 8
If GOB=1 Then GOBA(A)=RO(A)
If DWA=1 Then DWAA(A)=RO(A)
If ELV=1 Then ELVA(A)=RO(A)
If MEN=1 Then MENA(A)=RO(A)
Next A
If DAY=1 Then Proc DAY1
If DAY=2 Then Proc DAY2
If DAY=3 Then Proc DAY3
If DAY=4 Then Proc DAY4
If DAY=5 Then Proc DAY5
If DAY=6 Then Proc DAY6
If DAY=7 Then Proc DAY7
If DAY=8 Then Proc DAY8
If DAY=9 Then Proc DAY9
If DAY=10 Then Proc DAY10
If DAY=11 Then Proc DAY11
If DAY=12 Then Proc DAY12
If DAY=13 Then Proc DAY13
If DAY=14 Then Proc DAY14
If DAY=15 Then Proc DAY15
If DAY=16 Then Proc DAY16
If DAY=17 Then Proc DAY17
If DAY=18 Then Proc DAY18
If DAY=19 Then Proc DAY19
If DAY=20 Then Proc DAY20
If DAY=21 Then Proc DAY21
If DAY=22 Then Proc DAY22
If DAY=23 Then Proc DAY23
If DAY=24 Then Proc DAY24
If DAY=25 Then Proc DAY25
If DAY=26 Then Proc DAY26
If DAY=27 Then Proc DAY27
If DAY=28 Then Proc DAY28
If DAY=29 Then Proc DAY29
If DAY=30 Then Proc DAY30
If DAY=31 Then Proc DAY31
If DAY=32 Then Proc DAY32
If DAY=33 Then Proc DAY33
If DAY=34 Then Proc DAY34
If DAY=35 Then Proc DAY35
If DAY=36 Then Proc DAY36
D1:
Inc DAY
Show
OP=0
End Proc
Procedure MOV
If D=1 Then Goto NORTH
If D=2 Then Goto SOUTH
If D=3 Then Goto EAST
If D=4 Then Goto WEST
NORTH:
If R(R-100)=1 or R(R-100)=3 or TIME>200 Then OP=0 : Goto O2
R=R-100
Goto MOV1
SOUTH:
If R(R+100)=1 or R(R+100)=3 or TIME>200 Then OP=0 : Goto O2
R=R+100
Goto MOV1
EAST:
If R(R+1)=1 or R(R+1)=3 or TIME>200 Then OP=0 : Goto O2
R=R+1
Goto MOV1
WEST:
If R(R-1)=1 or R(R-1)=3 or TIME>200 Then OP=0 : Goto O2
R=R-1
MOV1:
If R(R)=2 Then TIME=TIME+2
If R(R)>3 and R(R)<16 Then TIME=TIME+2 : Goto O2
If R(R)=16 or R(R)=17 Then TIME=TIME+3
If R(R)=18 or R(R)=19 Then TIME=TIME+2
If R(R)=20 Then TIME=TIME+4
If R(R)>20 Then TIME=TIME+3
O2:
RO(HERO)=R
If GOB=1 Then GOBA(HERO)=R
If DWA=1 Then DWAA(HERO)=R
If ELV=1 Then ELVA(HERO)=R
If MEN=1 Then MENA(HERO)=R
OP=0
End Proc
Procedure BATTLE1
BLIP=1
BATT:
ZZ=Free
A$(1)=" GOBLINS " : A$(2)=" DWARVES " : A$(3)=" ELVES " : A$(4)=" MEN "
B$(1)=" A GOBLIN " : B$(2)=" A DWARVEN " : B$(3)=" AN ELVEN " : B$(4)=" A HUMAN "
C$(1)="CITY" : C$(2)="TOWN" : C$(3)="VILLAGE"
For A=1 To 9 : For B=1 To 18
WHO1=1
If GOBA(A)=D(B) and D(B)>0 Then WHO2=2 : Goto GD
If GOBA(A)=E(B) and E(B)>0 Then WHO2=3 : Goto GE
If GOBA(A)=M(B) and M(B)>0 Then WHO2=4 : Goto GM
WHO1=2
If DWAA(A)=G(B) and G(B)>0 Then WHO2=1 : Goto DG
If DWAA(A)=E(B) and E(B)>0 Then WHO2=3 : Goto DE
If DWAA(A)=M(B) and M(B)>0 Then WHO2=4 : Goto DM
WHO1=3
If ELVA(A)=G(B) and G(B)>0 Then WHO2=1 : Goto EG
If ELVA(A)=D(B) and D(B)>0 Then WHO2=2 : Goto ED
If ELVA(A)=M(B) and M(B)>0 Then WHO2=4 : Goto EM
WHO1=4
If MENA(A)=G(B) and G(B)>0 Then WHO2=1 : Goto MG
If MENA(A)=D(B) and D(B)>0 Then WHO2=2 : Goto MD
If MENA(A)=E(B) and E(B)>0 Then WHO2=3 : Goto ME
B1:
Next B : Next A
Print : Centre "A NEW DAY DAWNS"
For A=1 To 8
If GOB=1 Then RO(A)=GOBA(A)
If DWA=1 Then RO(A)=DWAA(A)
If ELV=1 Then RO(A)=ELVA(A)
If MEN=1 Then RO(A)=MENA(A)
Next A
For A=8 To 1 Step -1
If RO(A)>0 Then HERO=A : R=RO(HERO) : D=DI(HERO) : TIME=TIME(HERO)
Next A
TIME=8 : OP=0
For A=1 To 8
If RO(A)=0 Then TIME(A)=99 Else TIME(A)=8
Next A
If DAY>36 Then Proc THEEND
MM:
M=Mouse Key : If M=0 Then Goto MM
Ink 3 : Bar 0,0 To 640,114 : OP=8 : Pop Proc
GD:
X1=GOA(A) : X2=DA(B) : X3=D(B) : X4=GOBA(A)
Gosub RESULT
GOA(A)=X1 : DA(B)=X2 : D(B)=X3 : GOBA(A)=X4 : GW=GW+X7 : GL=GL+X6 : DW=DW+X6 : DL=DL+X7
Goto BATT
GE:
X1=GOA(A) : X2=EA(B) : X3=E(B) : X4=GOBA(A)
Gosub RESULT
GOA(A)=X1 : EA(B)=X2 : E(B)=X3 : GOBA(A)=X4 : GW=GW+X7 : GL=GL+X6 : EW=EW+X6 : EL=EL+X7
Goto BATT
GM:
X1=GOA(A) : X2=MA(B) : X3=M(B) : X4=GOBA(A)
Gosub RESULT
GOA(A)=X1 : MA(B)=X2 : M(B)=X3 : GOBA(A)=X4 : GW=GW+X7 : GL=GL+X6 : MW=MW+X6 : ML=ML+X7
Goto BATT
DG:
X1=DWA(A) : X2=GA(B) : X3=G(B) : X4=DWAA(A)
Gosub RESULT
DWA(A)=X1 : GA(B)=X2 : G(B)=X3 : DWAA(A)=X4 : DW=DW+X7 : DL=DL+X6 : GW=GW+X6 : GL=GL+X7
Goto BATT
DE:
X1=DWA(A) : X2=EA(B) : X3=E(B) : X4=DWAA(A)
Gosub RESULT
DWA(A)=X1 : EA(B)=X2 : E(B)=X3 : DWAA(A)=X4 : DW=DW+X7 : DL=DL+X6 : EW=EW+X6 : EL=EL+X7
Goto BATT
DM:
X1=DWA(A) : X2=MA(B) : X3=M(B) : X4=DWAA(A)
Gosub RESULT
DWA(A)=X1 : MA(B)=X2 : M(B)=X3 : DWAA(A)=X4 : DW=DW+X7 : DL=DL+X6 : MW=MW+X6 : ML=ML+X7
Goto BATT
EG:
X1=ELA(A) : X2=GA(B) : X3=G(B) : X4=ELVA(A)
Gosub RESULT
ELA(A)=X1 : GA(B)=X2 : G(B)=X3 : ELVA(A)=X4 : EW=EW+X7 : EL=EL+X6 : GW=GW+X6 : GL=GL+X7
Goto BATT
ED:
X1=ELA(A) : X2=DA(B) : X3=D(B) : X4=ELVA(A)
Gosub RESULT
ELA(A)=X1 : DA(B)=X2 : D(B)=X3 : ELVA(A)=X4 : EW=EW+X7 : EL=EL+X6 : DW=DW+X6 : DL=DL+X7
Goto BATT
EM:
X1=ELA(A) : X2=MA(B) : X3=M(B) : X4=ELVA(A)
Gosub RESULT
ELA(A)=X1 : MA(B)=X2 : M(B)=X3 : ELVA(A)=X4 : EW=EW+X7 : EL=EL+X6 : MW=MW+X6 : ML=ML+X7
Goto BATT
MG:
X1=MEA(A) : X2=GA(B) : X3=G(B) : X4=MENA(A)
Gosub RESULT
MEA(A)=X1 : GA(B)=X2 : G(B)=X3 : MENA(A)=X4 : MW=MW+X7 : ML=ML+X6 : GW=GW+X6 : GL=GL+X7
Goto BATT
MD:
X1=MEA(A) : X2=DA(B) : X3=D(B) : X4=MENA(A)
Gosub RESULT
MEA(A)=X1 : DA(B)=X2 : D(B)=X3 : MENA(A)=X4 : MW=MW+X7 : ML=ML+X6 : DW=DW+X6 : DL=DL+X7
Goto BATT
ME:
X1=MEA(A) : X2=EA(B) : X3=E(B) : X4=MENA(A)
Gosub RESULT
MEA(A)=X1 : EA(B)=X2 : E(B)=X3 : MENA(A)=X4 : MW=MW+X7 : ML=ML+X6 : EW=EW+X6 : EL=EL+X7
Goto BATT
RESULT:
If B<4 Then C=1
If B>3 and B<9 Then C=2
If B>8 and B<19 Then C=3
Gosub RESULT1
If Y1=1 Then X1=0 : X4=0 : X5=Rnd(X2/6) : X2=(X2-(X2/6))+X5 : X6=1 : X7=0
If Y1=2 Then X1=0 : X4=0 : X5=Rnd(X2/4) : X2=(X2-(X2/4))+X5 : X6=1 : X7=0
If Y1=3 Then X1=0 : X4=0 : X5=Rnd(X2/3) : X2=(X2/3)+X5 : X6=1 : X7=0
If Y1=4 Then X1=0 : X4=0 : X5=Rnd(X2/4) : X2=(X2/4)+X5 : X6=1 : X7=0
X=Rnd(1)
If Y1=5 and X=0 Then X1=0 : X4=0 : X2=Rnd(X2/5) : X6=1 : X7=0 : Y1=4
If Y1=5 and X=0 and X2<10 Then X2=10
If Y1=5 and X=1 Then X2=0 : X3=0 : X1=Rnd(X1/5) : X6=0 : X7=1
If Y1=5 and X=1 and X1<10 Then X1=10
If Y1>4 and R(X3)>3 and R(X3)<6 Then R(X3)=23
If Y1>4 and R(X3)>12 and R(X3)<15 Then R(X3)=23
If Y1>4 and R(X3)>6 and R(X3)<9 Then R(X3)=24
If Y1>4 and R(X3)>9 and R(X3)<12 Then R(X3)=24
If Y1=6 Then X2=0 : X3=0 : X5=Rnd(X1/4) : X1=(X1/4)+X5 : X6=0 : X7=1
If Y1=7 Then X2=0 : X3=0 : X5=Rnd(X1/3) : X1=(X1/3)+X5 : X6=0 : X7=1
If Y1=8 Then X2=0 : X3=0 : X5=Rnd(X1/4) : X1=(X1-(X1/4))+X5 : X6=0 : X7=1
If Y1=9 Then X2=0 : X3=0 : X5=Rnd(X1/6) : X1=(X1-(X1/6))+X5 : X6=0 : X7=1
If Y1<5 Then X1$=B$(WHO2) : X2$=C$(C) : X3$=B$(WHO1) : X4$=Str$(X2) : X5$=A$(WHO2)
If Y1<5 Then X$=X1$+X2$+" HAS DEFEATED"+X3$+"ARMY."+X4$+X5$+"SURVIVED."
If Y1>4 and C>1 Then X1$=B$(WHO2) : X2$=C$(C) : X3$=A$(WHO1) : X4$=Str$(X1) : X5$=A$(WHO1)
If Y1>4 and C>1 Then X$=X1$+X2$+" HAS FALLEN TO THE"+X3$+"."+X4$+" "+X5$+"SURVIVED."
CC=0
If Y1>4 and C=1 Then X1$=A$(WHO1) : X2$=B$(WHO2) : X3$=Str$(X1) : CC=1
If Y1>4 and C=1 Then X$=" THE"+X1$+"HAVE CAPTURED"+X2$+"CITY."+X3$+" "+X1$+"SURVIVED."
Print X$ : Return
RESULT1:
Y1=5
If X1>X2 Then Goto WIN1
If X2>X1 Then Goto WIN2
RN:
Return
WIN1:
If X2<(X1-(X1/4)) Then Inc Y1
If X2<(X1/2) Then Inc Y1
If X2<(X1/4) Then Inc Y1
If X2<(X1/5) Then Inc Y1
Goto RN
WIN2:
If X1<(X2-(X2/4)) Then Dec Y1
If X1<(X2/2) Then Dec Y1
If X1<(X2/4) Then Dec Y1
If X1<(X2/5) Then Dec Y1
Goto RN
End Proc
Procedure BATTLE2
Cls : Pen 3
B$=Str$(DAY)
Hide
A$="DAY"+B$+" OF THE WAR"
Locate 0,0 : Centre A$ : Print : Print
BATT2:
A$(1)=" GOBLINS " : A$(2)=" DWARVES " : A$(3)=" ELVES " : A$(4)=" MEN "
B$(1)=" A GOBLIN " : B$(2)=" A DWARVEN " : B$(3)=" AN ELVEN " : B$(4)=" A HUMAN "
C$="ARMY"
For A=1 To 9 : For B=1 To 9
WHO1=1
If GOBA(A)=DWAA(B) and GOBA(A)>0 Then WHO2=2 : Goto GD2
If GOBA(A)=ELVA(B) and GOBA(A)>0 Then WHO2=3 : Goto GE2
If GOBA(A)=MENA(B) and GOBA(A)>0 Then WHO2=4 : Goto GM2
WHO1=2
If DWAA(A)=ELVA(B) and DWAA(A)>0 Then WHO2=3 : Goto DE2
If DWAA(A)=MENA(B) and DWAA(A)>0 Then WHO2=4 : Goto DM2
WHO1=3
If ELVA(A)=MENA(B) and ELVA(A)>0 Then WHO2=4 : Goto EM2
Next B : Next A
OP=11 : Goto OO
GD2:
X1=GOA(A) : X2=DWA(B) : X3=DWAA(B) : X4=GOBA(A)
Gosub RESULT2
GOA(A)=X1 : DWA(B)=X2 : DWAA(B)=X3 : GOBA(A)=X4 : GW=GW+X7 : GL=GL+X6 : DW=DW+X6 : DL=DL+X7
Goto BATT2
GE2:
X1=GOA(A) : X2=ELA(B) : X3=ELVA(B) : X4=GOBA(A)
Gosub RESULT2
GOA(A)=X1 : ELA(B)=X2 : ELVA(B)=X3 : GOBA(A)=X4 : GW=GW+X7 : GL=GL+X6 : EW=EW+X6 : EL=EL+X7
Goto BATT2
GM2:
Gosub RESULT2
GOA(A)=X1 : MEA(B)=X2 : MENA(B)=X3 : GOBA(A)=X4 : GW=GW+X7 : GL=GL+X6 : MW=MW+X6 : ML=ML+X7
Goto BATT
DE2:
X1=DWA(A) : X2=ELA(B) : X3=ELVA(B) : X4=DWAA(A)
Gosub RESULT2
DWA(A)=X1 : ELA(B)=X2 : ELVA(B)=X3 : DWAA(A)=X4 : DW=DW+X7 : DL=DL+X6 : EW=EW+X6 : EL=EL+X7
Goto BATT2
DM2:
X1=DWA(A) : X2=MEA(B) : X3=MENA(B) : X4=DWAA(A)
Gosub RESULT2
DWA(A)=X1 : MEA(B)=X2 : MENA(B)=X3 : DWAA(A)=X4 : DW=DW+X7 : DL=DL+X6 : MW=MW+X6 : ML=ML+X7
Goto BATT2
EM2:
X1=ELA(A) : X2=MEA(B) : X3=MENA(B) : X4=ELVA(A)
Gosub RESULT2
ELA(A)=X1 : MEA(B)=X2 : MENA(B)=X3 : ELVA(A)=X4 : EW=EW+X7 : EL=EL+X6 : MW=MW+X6 : ML=ML+X7
Goto BATT2
RESULT2:
Gosub RESULT21
If Y1=1 Then X1=0 : X4=0 : X5=Rnd(X2/6) : X2=(X2-(X2/6))+X5 : X6=1 : X7=0
If Y1=2 Then X1=0 : X4=0 : X5=Rnd(X2/4) : X2=(X2-(X2/4))+X5 : X6=1 : X7=0
If Y1=3 Then X1=0 : X4=0 : X5=Rnd(X2/3) : X2=(X2/3)+X5 : X6=1 : X7=0
If Y1=4 Then X1=0 : X4=0 : X5=Rnd(X2/4) : X2=(X2/4)+X5 : X6=1 : X7=0
X=Rnd(1)
If Y1=5 and X=0 Then X1=0 : X4=0 : X2=Rnd(X2/5) : X6=1 : X7=0
If Y1=5 and X=0 and X2<10 Then X2=10
If Y1=5 and X=1 Then X2=0 : X3=0 : X1=Rnd(X1/5) : X6=0 : X7=1
If Y1=5 and X=1 and X1<10 Then X1=10
If Y1=6 Then X2=0 : X3=0 : X5=Rnd(X1/4) : X1=(X1/4)+X5 : X6=0 : X7=1
If Y1=7 Then X2=0 : X3=0 : X5=Rnd(X1/3) : X1=(X1/3)+X5 : X6=0 : X7=1
If Y1=8 Then X2=0 : X3=0 : X5=Rnd(X1/4) : X1=(X1-(X1/4))+X5 : X6=0 : X7=1
If Y1=9 Then X2=0 : X3=0 : X5=Rnd(X1/6) : X1=(X1-(X1/6))+X5 : X6=0 : X7=1
If Y1<5 Then D$=Str$(X2) : X$=B$(WHO2)+C$+" HAVE DEFEATED"+B$(WHO1)+C$+"."+D$+A$(WHO2)+"SURVIVED."
If Y1>4 Then D$=Str$(X1) : X$=B$(WHO1)+C$+" HAVE DEFEATED"+B$(WHO2)+C$+"."+D$+A$(WHO1)+"SURVIVED."
Print X$ : Return
RESULT21:
Y1=5
If X1>X2 Then Goto WIN21
If X2>X1 Then Goto WIN22
RN2:
Return
WIN21:
If X2<(X1-(X1/4)) Then Inc Y1
If X2<(X1/2) Then Inc Y1
If X2<(X1/4) Then Inc Y1
If X2<(X1/5) Then Inc Y1
Goto RN2
WIN22:
If X1<(X2-(X2/4)) Then Dec Y1
If X1<(X2/2) Then Dec Y1
If X1<(X2/4) Then Dec Y1
If X1<(X2/5) Then Dec Y1
Goto RN2
OO:
End Proc
Procedure RECDEP
If HERO>1 Then Goto NOA
Ink 3 : Bar 224,0 To 640,110 : Ink 9
Bar 257,13 To 630,35 : Bar 342,37 To 534,108 : Bar 435,37 To 439,108 : Ink 0,9
RECDEP:
If GOB=1 Then XX=GOA(HERO) : YY=GA(DEF) : C$=" GOBLINS"
If DWA=1 Then XX=DWA(HERO) : YY=DA(DEF) : C$=" DWARVES"
If ELV=1 Then XX=ELA(HERO) : YY=EA(DEF) : C$=" ELVES"
If MEN=1 Then XX=MEA(HERO) : YY=MA(DEF) : C$=" MEN"
A$=Str$(XX) : B$=Str$(YY) : C=Len(B$) : B$=Right$(B$,C-1)
If DEF<4 Then D$="CITY"
If DEF>3 and DEF<9 Then D$="TOWN"
If DEF>8 Then D$="VILLAGE"
A$=HERO$(HERO)+" HAS AN ARMY OF"+A$+C$
A=Len(A$) : If A<37 Then A=(37-A) : A=A*5 : Else A=0
Text 260+A,21,A$
B$=B$+C$+" GUARD THE "+D$
A=Len(B$) : A=(37-A) : A=A*5
Text 260+A,33,B$
Text 352,45,"RECRUIT" : Text 454,45,"DEPLOY"
A$=Str$(YY/4) : B$=Str$(YY/2) : C$=Str$(YY-(YY/4)) : D$=Str$(YY-10) : E$="0"
If YY<10 Then D$="0"
If YY<12 Then A$=D$
If YY<20 Then B$=D$
If YY<40 Then C$=D$
Text 369,57,E$ : Text 359,69,A$ : Text 359,81,B$ : Text 359,93,C$ : Text 359,105,D$
R1=Val(A$) : R2=Val(B$) : R3=Val(C$) : R4=Val(D$)
A$=Str$(XX/4) : B$=Str$(XX/2) : C$=Str$(XX-(XX/4)) : D$=Str$(XX) : E$="0"
Text 467,57,E$ : Text 457,69,A$ : Text 457,81,B$ : Text 457,93,C$ : Text 457,105,D$
D1=Val(A$) : D2=Val(B$) : D3=Val(C$) : D4=Val(D$)
Box 257,13 To 630,35 : Box 342,37 To 534,108 : Box 435,37 To 438,108
R1:
X1=0 : Y1=0 : X=X Mouse : Y=Y Mouse : M=Mouse Key
If X<297 or X>397 Then Sprite Off
If X>296 and X<346 Then Goto RECRUIT
If X>348 and X<398 Then Goto DEPLOY
Goto R1
RECRUIT:
If Y<224 or Y>293 Then Sprite Off : Goto R1
If Y>219 and Y<231 Then Sprite 1,300,219,135 : X1=0
If Y>231 and Y<243 Then Sprite 1,300,231,135 : X1=R1
If Y>243 and Y<255 Then Sprite 1,300,243,135 : X1=R2
If Y>255 and Y<267 Then Sprite 1,300,255,135 : X1=R3
If Y>267 and Y<279 Then Sprite 1,300,267,135 : X1=R4
If M>0 Then YY=YY-X1 : Goto CHOOSE
Goto R1
DEPLOY:
If Y<224 or Y>293 Then Sprite Off : Goto R1
If Y>219 and Y<231 Then Sprite 1,348,219,135 : Y1=0
If Y>231 and Y<243 Then Sprite 1,348,231,135 : Y1=D1
If Y>243 and Y<255 Then Sprite 1,348,243,135 : Y1=D2
If Y>255 and Y<267 Then Sprite 1,348,255,135 : Y1=D3
If Y>267 and Y<279 Then Sprite 1,348,267,135 : Y1=D4
If M>0 Then XX=XX-Y1 : Goto CHOOSE
Goto R1
NOA:
Ink 3 : Bar 224,0 To 640,114 : Ink 9
Bar 280,16 To 577,100 : Ink 0,9 : Box 280,16 To 577,100
Text 292,37," THIS OPTION IS ONLY"
Text 292,50," AVAILABLE"
Text 292,65," IN THE FULL SCALE"
Text 292,80," VERSION OF THIS GAME."
FFFFF:
M=Mouse Click
If M=0 Then Goto FFFFF
OP=0 : BLIP=1 : Sprite Off : Ink 3 : Bar 224,0 To 640,114 : Goto NJN
CHOOSE:
Sprite Off : XX=XX+X1 : YY=YY+Y1
If GOB=1 Then GOA(HERO)=XX : GA(DEF)=YY
If DWA=1 Then DWA(HERO)=XX : DA(DEF)=YY
If ELV=1 Then ELA(HERO)=XX : EA(DEF)=YY
If MEN=1 Then MEA(HERO)=XX : MA(DEF)=YY
Ink 3 : Bar 224,0 To 640,110 : Ink 0,9
OP=0 : BLIP=1
NJN:
End Proc
Procedure MAP1
Screen 0 : Fade 1 : Wait 15 : Bob Clear : Wait Vbl : Cls
Ink 4
MAP1:
X=10 : Y=10 : B=0
MP:
For C=(-610+B) To(-590+B)
A=0
If R+C<1 or R+C>8000 Then A=1
If A=0 Then A=R(R+C)
Paste Bob X,Y,A+100
X=X+8
Next C
Y=Y+8 : X=10 : B=B+100
If B>1200 Then Goto MP1
Goto MP
MP1:
Text 90,64,"H"
For A=1 To 6 : Paste Bob 200,A*10,(A+100) : Next A
Paste Bob 200,70,116 : Paste Bob 200,80,118 : Paste Bob 200,90,120
Paste Bob 200,100,121 : Paste Bob 200,110,123
Restore DESC : For A=1 To 11 : Read D$(A) : Next A
B=1
For A=10 To 110 Step 10 : Text 212,A+6,D$(B) : B=B+1 : Next A
DESC:
Data "Sea","Beach","River","Village","Town","City","Hill","Plain","Mountain","Forest","Ruins"
Fade 1 To 1 : Wait 15
MAP2:
M=Mouse Key : If M=0 Then Goto MAP2
Cls
OP=0
End Proc
Procedure MAP2
Screen Close 1 : Screen Open 0,320,220,16,Lowres : Flash Off : Curs Off
Paste Bob 61,31,98
Colour 1,$F : Colour 2,$FF0 : Colour 3,$E : Colour 4,$0
Colour 5,$A0 : Colour 6,$666 : Colour 7,$F0 : Colour 8,$AAA
Colour 9,$333 : Colour 10,$50 : Colour 11,$50 : Colour 14,$0 : Colour 15,$0
A$=Str$(R) : A=3 : If R<1000 Then A=2
B$=Left$(A$,A) : C$=Right$(A$,2)
Ink 14 : Flash 14,"(000,10)(fff,10)"
Y=Val(B$) : Y=(Y*2)+30 : X=Val(C$) : X=(X*2)+60 : Box X-7,Y-5 To X-2,Y
W1:
M=Mouse Key : If M=0 Then Goto W1
Screen Open 0,320,120,16,Lowres : Flash Off : Curs Off
Screen Open 1,640,120,16,Hires : Screen Display 1,130,170,,
Flash Off : Curs Off : Set Font 1
Ink 3 : Bar 0,0 To 640,114 : OP=0 : BLIP=1
End Proc
Procedure DAY1
D1G:
If GOB=1 Then Goto D1D
GOBA(1)=714
GOBA(4)=1608
GOBA(7)=2341
D1D:
If DWA=1 Then Goto D1E
DWAA(1)=1170
DWAA(4)=2788
DWAA(7)=4187
D1E:
If ELV=1 Then Goto D1M
ELVA(1)=6921
ELVA(4)=6035
ELVA(7)=6260
D1M:
If MEN=1 Then Goto ED1
MENA(1)=5257
MENA(4)=6880
MENA(7)=5288 : A=MA(13)/4 : MEA(7)=MEA(7)+(MA(13)-A) : MA(13)=A
ED1:
End Proc
Procedure DAY2
D2G:
If GOB=1 Then Goto D2D
GOBA(1)=917 : A=GA(1)/4 : GOA(1)=GOA(1)+(GA(1)-A) : GA(1)=A
GOBA(4)=2010 : A=GA(13)/4 : GOA(4)=GOA(4)+(GA(13)-A) : GA(13)=A
GOBA(7)=2223 : A=GA(8)/4 : GOA(7)=GOA(7)+(GA(8)-A) : GA(8)=A
D2D:
If DWA=1 Then Goto D2E
DWAA(1)=1670
DWAA(4)=2188
DWAA(7)=3889
D2E:
If ELV=1 Then Goto D2M
ELVA(1)=6421 : A=EA(12)/4 : ELA(1)=ELA(1)+(EA(12)-A) : EA(12)=A
ELVA(4)=6233
ELVA(7)=5956
D2M:
If MEN=1 Then Goto EN2
MENA(1)=4757 : A=MA(9)/4 : MEA(1)=MEA(1)+(MA(9)-A) : MA(9)=A
MENA(4)=6684
MENA(7)=5888
EN2:
End Proc
Procedure DAY3
D3G:
If GOB=1 Then Goto D3D
GOBA(1)=1417 : A=GA(10)/4 : GOA(1)=GOA(1)+(GA(10)-A) : GA(10)=A
GOBA(4)=2408 : A=GA(2)/4 : GOA(4)=GOA(4)+(GA(2)-A) : GA(2)=A
GOBA(7)=1937 : A=GA(3)/4 : GOA(7)=GOA(7)+(GA(3)-A) : GA(3)=A
D3D:
If DWA=1 Then Goto D3E
DWAA(1)=1967
DWAA(4)=2088 : A=DA(11)/4 : DWA(4)=DWA(4)+(DA(11)-A) : DA(11)=A
DWAA(7)=3690 : A=DA(17)/4 : DWA(7)=DWA(7)+(DA(17)-A) : DA(17)=A
D3E:
If ELV=1 Then Goto D3M
ELVA(1)=6315
ELVA(4)=6733 : A=EA(8)/4 : ELA(4)=ELA(4)+(EA(8)-A) : EA(8)=A
ELVA(7)=5554 : A=EA(16)/4 : ELA(7)=ELA(7)+(EA(16)-A) : EA(16)=A
D3M:
If MEN=1 Then Goto ED3
MENA(1)=4255
MENA(4)=6686 : A=MA(8)/4 : MEA(4)=MEA(4)+(MA(8)-A) : MA(8)=A
MENA(7)=5986 : A=MA(14)/4 : MEA(7)=MEA(7)+(MA(14)-A) : MA(14)=A
ED3:
End Proc
Procedure DAY4
D4G:
If GOB=1 Then Goto D4D
GOBA(1)=1719
GOBA(4)=2513
GOBA(7)=1843 : A=GA(17)/4 : GOA(7)=GOA(7)+(GA(17)-A) : GA(17)=A
D4D:
If DWA=1 Then Goto D4E
DWAA(1)=2365 : A=DA(13)/4 : DWA(1)=DWA(1)+(DA(13)-A) : DA(13)=A
DWAA(4)=1787
DWAA(7)=3485
D4E:
If ELV=1 Then Goto D4M
ELVA(1)=6310 : A=EA(11)/4 : ELA(1)=ELA(1)+(EA(11)-A) : EA(11)=A
ELVA(4)=6132
ELVA(7)=5953 : A=EA(7)/4 : ELA(7)=ELA(7)+(EA(7)-A) : EA(7)=A
D4M:
If MEN=1 Then Goto ED4
MENA(1)=4055 : A=MA(4)/4 : MEA(1)=MEA(1)+(MA(4)-A) : MA(4)=A
MENA(4)=6680
MENA(7)=5582 : A=MA(16)/4 : MEA(7)=MEA(7)+(MA(16)-A) : MA(16)=A
ED4:
End Proc
Procedure DAY5
D5G:
If GOB=1 Then Goto D5D
GOBA(1)=2119 : A=GA(4)/4 : GOA(1)=GOA(1)+(GA(4)-A) : GA(4)=A
GOBA(4)=2914 : A=GA(7)/4 : GOA(4)=GOA(4)+(GA(7)-A) : GA(7)=A
GOBA(7)=2047
D5D:
If DWA=1 Then Goto D5E
DWAA(1)=2260
DWAA(4)=1486
DWAA(7)=3183 : A=DA(16)/4 : DWA(7)=DWA(7)+(DA(16)-A) : DA(16)=A
D5E:
If ELV=1 Then Goto D5M
ELVA(1)=5710
ELVA(4)=5632
ELVA(7)=6553
D5M:
If MEN=1 Then Goto ED5
MENA(1)=4160
MENA(4)=6679 : A=MA(18)/4 : MEA(4)=MEA(4)+(MA(18)-A) : MA(18)=A
MENA(7)=5080 : A=MA(6)/4 : MEA(7)=MEA(7)+(MA(6)-A) : MA(6)=A
ED5:
End Proc
Procedure DAY6
D6G:
If GOB=1 Then Goto D6D
GOBA(1)=2125
GOBA(4)=3313
GOBA(7)=2347 : A=GA(18)/4 : GOA(7)=GOA(7)+(GA(18)-A) : GA(18)=A
D6D:
If DWA=1 Then Goto D6E
DWAA(1)=1861
DWAA(4)=1385 : A=DA(2)/4 : DWA(4)=DWA(4)+(DA(2)-A) : DA(2)=A
DWAA(7)=2683
D6E:
If ELV=1 Then Goto D6M
ELVA(1)=5410 : A=EA(4)/4 : ELA(1)=ELA(1)+(EA(4)-A) : EA(4)=A
ELVA(4)=5726 : A=EA(13)/4 : ELA(4)=ELA(4)+(EA(13)-A) : EA(13)=A
ELVA(7)=7153
D6M:
If MEN=1 Then Goto ED6
MENA(1)=4363 : A=MA(5)/4 : MEA(1)=MEA(1)+(MA(5)-A) : MA(5)=A
MENA(4)=6475
MENA(7)=5074
ED6:
End Proc
Procedure DAY7
D7G:
If GOB=1 Then Goto D7D
GOBA(1)=2624 : A=GA(11)/4 : GOA(1)=GOA(1)+GA(11)-A : GA(11)=A
GOBA(4)=3412 : A=GA(15)/4 : GOA(4)=GOA(4)+GA(15)-A : GA(15)=A
GOBA(7)=2353 : GOBA(8)=2353 : GOBA(9)=2353
GOA(7)=GOA(7)/3 : GOA(8)=GOA(7) : GOA(9)=GOA(7)
D7D:
If DWA=1 Then Goto D7E
DWAA(1)=1661 : A=DA(1)/4 : DWA(1)=DWA(1)+(DA(1)-A) : DA(1)=A
DWAA(4)=1381
DWAA(7)=2380
D7E:
If ELV=1 Then Goto D7M
ELVA(1)=5113
ELVA(4)=5126
ELVA(7)=7151 : A=EA(18)/4 : ELA(7)=ELA(7)+(EA(18)-A) : EA(18)=A
D7M:
If MEN=1 Then Goto ED7
MENA(1)=3763
MENA(4)=6372
MENA(7)=5171
ED7:
End Proc
Procedure DAY8
D8G:
If GOB=1 Then Goto D8D
GOBA(1)=2529 : A=GA(12)/4 : GOA(1)=GOA(1)+GA(12)-A : GA(12)=A
GOBA(4)=4012 : GOBA(5)=4012 : GOBA(6)=4012
GOA(4)=GOA(4)/3 : GOA(5)=GOA(4) : GOA(6)=GOA(4)
GOBA(7)=1854 : GOBA(8)=2358 : GOBA(9)=2556
D8D:
If DWA=1 Then Goto D8E
DWAA(1)=1061
DWAA(4)=1376
DWAA(7)=2279 : A=DA(12)/4 : DWA(7)=DWA(7)+(DA(12)-A) : DA(12)=A
D8E:
If ELV=1 Then Goto D8M
ELVA(1)=5115 : A=EA(10)/4 : ELA(1)=ELA(1)+(EA(10)-A) : EA(10)=A
ELVA(4)=5024 : A=EA(5)/4 : ELA(4)=ELA(4)+(EA(5)-A) : EA(5)=A
ELVA(7)=7145
D8M:
If MEN=1 Then Goto ED8
MENA(1)=3757
MENA(4)=6171 : A=MA(7)/4 : MEA(4)=MEA(4)+(MA(7)-A) : MA(7)=A
MENA(7)=4673 : A=MA(11)/4 : MEA(7)=MEA(7)+(MA(11)-A) : MA(11)=A
ED8:
End Proc
Procedure DAY9
D9G:
If GOB=1 Then Goto D9D
GOBA(1)=3029
GOBA(4)=4018 : GOBA(5)=4414 : GOBA(6)=4611
GOBA(7)=1456 : GOBA(8)=2365 : GOBA(9)=2956
D9D:
If DWA=1 Then Goto D9E
DWAA(1)=860 : A=DA(9)/4 : DWA(1)=DWA(1)+(DA(9)-A) : DA(9)=A
DWAA(4)=1773 : A=DA(5)/4 : DWA(4)=DWA(4)+(DA(5)-A) : DA(5)=A
DWAA(7)=1977
D9E:
If ELV=1 Then Goto D9M
ELVA(1)=4615
ELVA(4)=5028
ELVA(7)=6645
D9M:
If MEN=1 Then Goto ED9
MENA(1)=3751
MENA(4)=6065
MENA(7)=4175 : A=MA(12)/4 : MEA(7)=MEA(7)+(MA(12)-A) : MA(12)=A
ED9:
End Proc
Procedure DAY10
D10G:
If GOB=1 Then Goto D10D
GOBA(1)=3035
GOBA(4)=4024 : GOBA(5)=4419 : GOBA(6)=4914
GOBA(7)=1256 : GOBA(8)=1967 : GOBA(9)=3158
D10D:
If DWA=1 Then Goto D10E
DWAA(1)=1056
DWAA(4)=1767
DWAA(7)=1871
D10E:
If ELV=1 Then Goto D10M
ELVA(1)=4414 : A=EA(9)/4 : ELA(1)=ELA(1)+(EA(9)-A) : EA(9)=A
ELVA(4)=5028 : A=EA(14)/4 : ELA(4)=ELA(4)+(EA(14)-A) : EA(14)=A
ELVA(7)=6645 : A=EA(17)/4 : ELA(7)=ELA(7)+(EA(17)-A) : EA(17)=A
D10M:
If MEN=1 Then Goto ED10
MENA(1)=3547
MENA(4)=5865 : A=MA(17)/4 : MEA(4)=MEA(4)+(MA(17)-A) : MA(17)=A
MENA(7)=3775 : MENA(8)=3775 : MENA(9)=3775
MEA(7)=MEA(7)/3 : MEA(8)=MEA(7) : MEA(9)=MEA(7)
ED10:
End Proc
Procedure DAY11
D11G:
If GOB=1 Then Goto D11D
GOBA(1)=3236 : GOA(1)=GOA(1)+(GA(5)/2) : GA(5)=GA(5)/2
GOBA(4)=4031 : GOBA(5)=4425 : GOBA(6)=5114
GOBA(7)=857 : GOBA(8)=1468 : GOBA(9)=3161
D11D:
If DWA=1 Then Goto D11E
DWAA(1)=1256 : A=DA(4)/4 : DWA(1)=DWA(1)+(DA(4)-A) : DA(4)=A
DWAA(4)=2266
DWAA(7)=1966
D11E:
If ELV=1 Then Goto D11M
ELVA(1)=4914 : ELVA(2)=4914 : ELVA(3)=4914
ELA(1)=ELA(1)/3 : ELA(2)=ELA(1) : ELA(3)=ELA(1)
ELVA(4)=5039
ELVA(7)=6045
D11M:
If MEN=1 Then Goto ED11
MENA(1)=3543 : MENA(2)=3543 : MENA(3)=3543
MEA(1)=MEA(1)/3 : MEA(2)=MEA(1) : MEA(3)=MEA(1)
MENA(4)=5871
MENA(7)=3769 : MENA(8)=3769 : MENA(9)=3577
ED11:
End Proc
Procedure DAY12
D12G:
If GOB=1 Then Goto D12D
GOBA(1)=3539
GOBA(4)=4037 : GOBA(5)=4529 : GOBA(6)=5311
GOBA(7)=860 : GOBA(8)=1170 : GOBA(9)=3166
D12D:
If DWA=1 Then Goto D12E
DWAA(1)=1856
DWAA(4)=2865
DWAA(7)=2466
D12E:
If ELV=1 Then Goto D12M
ELVA(1)=3921 : ELVA(2)=3921 : ELVA(3)=3921
ELVA(4)=4540 : A=EA(6)/4 : ELA(4)=ELA(4)+(EA(6)-A) : EA(6)=A
ELVA(7)=5545
D12M:
If MEN=1 Then Goto ED12
MENA(1)=3242 : MENA(2)=3637 : MENA(3)=3340
MENA(4)=5775 : A=MA(15)/4 : MEA(4)=MEA(4)+(MA(15)-A) : MA(15)=A
MENA(7)=3365 : MENA(8)=3369 : MENA(9)=3372
ED12:
End Proc
Procedure DAY13
D13G:
If GOB=1 Then Goto D13D
GOBA(1)=3547 : GOBA(2)=3547 : GOBA(3)=3547
GOA(1)=GOA(1)/3 : GOA(2)=GOA(1) : GOA(3)=GOA(1)
GOBA(4)=4340 : GOBA(5)=4633 : GOBA(6)=5410
GOBA(7)=1361 : GOBA(8)=1571 : GOBA(9)=3369
D13D:
If DWA=1 Then Goto D13E
DWAA(1)=1854 : A=DA(18)/4 : DWA(1)=DWA(1)+(DA(18)-A) : DA(18)=A
DWAA(4)=2961
DWAA(7)=2966
D13E:
If ELV=1 Then Goto D13M
ELVA(1)=3927 : ELVA(2)=3422 : ELVA(3)=3927
ELVA(4)=4546
ELVA(7)=5045 : A=EA(15)/4 : ELA(7)=ELA(7)+(EA(15)-A) : EA(15)=A
D13M:
If MEN=1 Then Goto ED13
MENA(1)=2941 : MENA(2)=3631 : MENA(3)=3236
MENA(4)=5770 : A=MA(15)/4 : MEA(4)=MEA(4)+(MA(15)-A) : MA(15)=A
MENA(7)=3161 : MENA(8)=2965 : MENA(9)=2970
ED13:
End Proc
Procedure DAY14
D14G:
If GOB=1 Then Goto D14D
GOBA(1)=3552 : GOBA(2)=3552 : GOBA(3)=3552
GOBA(4)=4540 : GOBA(5)=5033 : GOBA(6)=6010
GOBA(7)=1661 : GOBA(8)=1773 : GOBA(9)=3574
D14D:
If DWA=1 Then Goto D14E
DWAA(1)=1848 : DWAA(2)=1848 : DWAA(3)=1848
DWA(1)=DWA(1)/3 : DWA(2)=DWA(1) : DWA(3)=DWA(1)
DWAA(4)=2961
DWAA(7)=3161 : A=DA(14)/4 : DWA(7)=DWA(7)+(DA(14)-A) : DA(14)=A
D14E:
If ELV=1 Then Goto D14M
ELVA(1)=3933 : ELVA(2)=2922 : ELVA(3)=3933
ELVA(4)=4451 : ELVA(5)=4451 : ELVA(6)=4451
ELA(4)=ELA(4)/3 : ELA(5)=ELA(4) : ELA(6)=ELA(4)
ELVA(7)=4545
D14M:
If MEN=1 Then Goto ED14
MENA(1)=2341 : MENA(2)=3625 : MENA(3)=3032
MENA(4)=5764
MENA(7)=3158 : MENA(8)=2365 : MENA(9)=2468
ED14:
End Proc
Procedure DAY15
D15G:
If GOB=1 Then Goto D15D
GOBA(1)=4054 : GOBA(2)=4054 : GOBA(3)=4054
GOBA(4)=4645 : GOBA(5)=5027 : GOBA(6)=6310
GOBA(8)=1779 : GOBA(9)=3577
D15D:
If DWA=1 Then Goto D15E
DWAA(1)=1843 : DWAA(2)=2448 : DWAA(3)=2448
DWAA(4)=3158 : A=DA(7)/4 : DWA(4)=DWA(4)+(DA(7)-A) : DA(7)=A
DWAA(7)=3375
D15E:
If ELV=1 Then Goto D15M
ELVA(1)=3526 : ELVA(2)=2624 : ELVA(3)=3939
ELVA(4)=4457 : ELVA(5)=4457 : ELVA(6)=4457
ELVA(7)=3945
D15M:
If MEN=1 Then Goto ED15
MENA(1)=2337 : MENA(2)=3619 : MENA(3)=2828
MENA(4)=5360
MENA(7)=2755 : MENA(8)=1867 : MENA(9)=2273
ED15:
End Proc
Procedure DAY16
D16G:
If GOB=1 Then Goto D16D
GOBA(1)=4060 : GOBA(2)=4060 : GOBA(3)=4655
GOBA(4)=5045 : GOBA(5)=5024 : GOBA(6)=6316
GOBA(8)=1683 : GOBA(9)=3075
D16D:
If DWA=1 Then Goto D16E
DWAA(1)=2343 : DWAA(2)=2948 : DWAA(3)=2948
DWAA(4)=3252
DWAA(7)=3377 : A=DA(15)/4 : DWA(7)=DWA(7)+(DA(15)-A) : DA(15)=A
D16E:
If ELV=1 Then Goto D16M
ELVA(1)=3236 : ELVA(2)=2529 : ELVA(3)=3339
ELVA(4)=4462 : ELVA(5)=4563 : ELVA(6)=4462
ELVA(7)=3547
D16M:
If MEN=1 Then Goto ED16
MENA(1)=2233 : MENA(2)=3613 : MENA(3)=2529
MENA(4)=4956
MENA(7)=2155 : MENA(8)=1369 : MENA(9)=2279
ED16:
End Proc
Procedure DAY17
D17G:
If GOB=1 Then Goto D17D
GOBA(1)=4363 : GOBA(2)=4363 : GOBA(3)=4757
GOBA(4)=5448 : GOBA(5)=5426 : GOBA(6)=6421
GOBA(8)=1385 : GOBA(9)=2968
D17D:
If DWA=1 Then Goto D17E
DWAA(1)=2347 : DWAA(2)=2943 : DWAA(3)=3345
DWAA(4)=3547
DWAA(7)=3975 : DWAA(8)=3975 : DWAA(9)=3975
DWA(7)=DWA(7)/3 : DWA(8)=DWA(7) : DWA(9)=DWA(7)
D17E:
If ELV=1 Then Goto D17M
ELVA(1)=3231 : ELVA(2)=2125 : ELVA(3)=2941
ELVA(4)=4468 : ELVA(5)=5165 : ELVA(6)=4468
ELVA(7)=3250 : ELVA(8)=3250 : ELVA(9)=3250
ELA(7)=ELA(7)/3 : ELA(8)=ELA(7) : ELA(9)=ELA(7)
D17M:
If MEN=1 Then Goto ED17
MENA(1)=2238 : MENA(2)=3412 : MENA(3)=2624
MENA(4)=4454
MENA(7)=1854 : MENA(8)=1170 : MENA(9)=2283
ED17:
End Proc
Procedure DAY18
D18G:
If GOB=1 Then Goto D18D
GOBA(1)=4567 : GOBA(2)=4268 : GOBA(3)=5258
GOBA(4)=5554 : GOBA(5)=5726 : GOBA(6)=6910
GOBA(9)=2469
D18D:
If DWA=1 Then Goto D18E
DWAA(1)=2847 : DWAA(2)=3038 : DWAA(3)=3340
DWAA(4)=4046 : DWAA(5)=4046 : DWAA(6)=4046
DWA(4)=DWA(4)/3 : DWA(5)=DWA(4) : DWA(6)=DWA(4)
DWAA(7)=4075 : DWAA(8)=4477 : DWAA(9)=4575
D18E:
If ELV=1 Then Goto D18M
ELVA(1)=3327 : ELVA(2)=2121 : ELVA(3)=2945
ELVA(4)=4673 : ELVA(5)=5765 : ELVA(6)=4771
ELVA(7)=3256 : ELVA(8)=3256 : ELVA(9)=3256
D18M:
If MEN=1 Then Goto ED18
MENA(1)=2343 : MENA(2)=3113 : MENA(3)=2125
MENA(4)=4449 : MENA(5)=4449 : MENA(5)=4449
MEA(4)=MEA(4)/3 : MEA(5)=MEA(4) : MEA(6)=MEA(4)
MENA(7)=1456 : MENA(8)=1671 : MENA(9)=2088
ED18:
End Proc
Procedure DAY19
D19G:
If GOB=1 Then Goto D19D
GOBA(1)=4871 : GOBA(2)=4173 : GOBA(3)=5263
GOBA(4)=5953 : GOBA(5)=5631 : GOBA(6)=6915
GOBA(9)=2273
D19D:
If DWA=1 Then Goto D19E
DWAA(1)=2948 : DWAA(2)=3032 : DWAA(3)=3236
DWAA(4)=4040 : DWAA(5)=4241 : DWAA(6)=4646
DWAA(7)=4675 : DWAA(8)=5077 : DWAA(9)=5275
D19E:
If ELV=1 Then Goto D19M
ELVA(1)=3322 : ELVA(2)=2119 : ELVA(3)=2547
ELVA(4)=4175 : ELVA(5)=5865 : ELVA(6)=5171
ELVA(7)=3158 : ELVA(8)=3262 : ELVA(9)=3262
D19M:
If MEN=1 Then Goto ED19
MENA(1)=2347 : MENA(2)=2913 : MENA(3)=2121
MENA(4)=4447 : MENA(5)=4444 : MENA(5)=4444
MENA(7)=1256 : MENA(8)=1773 : MENA(9)=2688
ED19:
End Proc
Procedure DAY20
D20G:
If GOB=1 Then Goto D20D
GOBA(1)=5171 : GOBA(2)=4673 : GOBA(4)=6452
GOBA(5)=5933 : GOBA(9)=2279
D20D:
If DWA=1 Then Goto D20E
DWAA(1)=2944 : DWAA(2)=2828 : DWAA(3)=3231
DWAA(4)=4034 : DWAA(5)=4540 : DWAA(6)=5346
DWAA(7)=4673 : DWAA(8)=5080 : DWAA(9)=5775
D20E:
If ELV=1 Then Goto D20M
ELVA(1)=3416 : ELVA(2)=1717 : ELVA(3)=2347
ELVA(4)=4169 : ELVA(5)=6069 : ELVA(6)=5177
ELVA(7)=3161 : ELVA(8)=2662 : ELVA(9)=3367
D20M:
If MEN=1 Then Goto ED20
MENA(1)=1945 : MENA(2)=2411 : MENA(3)=2119
MENA(4)=4444 : MENA(5)=4438 : MENA(5)=4539
MENA(7)=858 : MENA(8)=1779 : MENA(9)=2788
ED20:
End Proc
Procedure DAY21
D21G:
If GOB=1 Then Goto D21D
GOBA(1)=5475 : GOBA(2)=5075 : GOBA(4)=6447
GOBA(5)=6533 : GOBA(9)=2384
D21D:
If DWA=1 Then Goto D21E
DWAA(1)=2941 : DWAA(2)=2529 : DWAA(3)=3327
DWAA(4)=4028 : DWAA(5)=4534 : DWAA(6)=5946
DWAA(7)=5171 : DWAA(8)=5582 : DWAA(9)=5870
D21E:
If ELV=1 Then Goto D21M
ELVA(1)=3412 : ELVA(2)=1417 : ELVA(3)=1945
ELVA(4)=4164 : ELVA(5)=6171 : ELVA(6)=5180
ELVA(7)=2561 : ELVA(8)=2365 : ELVA(9)=3369
D21M:
If MEN=1 Then Goto ED21
MENA(1)=1843 : MENA(2)=2010 : MENA(3)=1717
MENA(4)=4438 : MENA(5)=4533 : MENA(5)=4942
MENA(7)=860 : MENA(8)=1784 : MENA(9)=3186
ED21:
End Proc
Procedure DAY22
D22G:
If GOB=1 Then Goto D22D
GOBA(1)=5775 : GOBA(2)=5080 : GOBA(4)=6445
GOBA(5)=6733 : GOBA(9)=2088
D22D:
If DWA=1 Then Goto D22E
DWAA(1)=2440 : DWAA(2)=2624 : DWAA(3)=3421
DWAA(4)=4022 : DWAA(5)=5033 : DWAA(6)=6445
DWAA(7)=4670 : DWAA(8)=5786 : DWAA(9)=5865
D22E:
If ELV=1 Then Goto D22M
ELVA(1)=3013 : ELVA(2)=1413 : ELVA(3)=1843
ELVA(4)=4363 : ELVA(5)=5975 : ELVA(6)=5582
ELVA(7)=2256 : ELVA(8)=1968 : ELVA(9)=3375
D22M:
If MEN=1 Then Goto ED22
MENA(1)=1839 : MENA(2)=1707 : MENA(3)=1417
MENA(4)=4432 : MENA(5)=5033 : MENA(5)=5045
MENA(7)=1361 : MENA(8)=1385 : MENA(9)=3183
ED22:
End Proc
Procedure DAY23
D23G:
If GOB=1 Then Goto D23D
GOBA(1)=5770 : GOBA(2)=5582 : GOBA(4)=6945
GOBA(5)=6638 : GOBA(9)=2788
D23D:
If DWA=1 Then Goto D23E
DWAA(1)=2137 : DWAA(2)=2124 : DWAA(3)=3415
DWAA(4)=4016 : DWAA(5)=5027 : DWAA(6)=6945
DWAA(7)=4366 : DWAA(8)=5986 : DWAA(9)=6070
D23E:
If ELV=1 Then Goto D23M
ELVA(1)=2914 : ELVA(2)=1310 : ELVA(3)=2843
ELVA(4)=4061 : ELVA(5)=5775 : ELVA(6)=5786
ELVA(7)=1854 : ELVA(8)=1773 : ELVA(9)=3577
D23M:
If MEN=1 Then Goto ED23
MENA(1)=1937 : MENA(2)=1410 : MENA(3)=917
MENA(4)=4427 : MENA(5)=5027 : MENA(5)=5447
MENA(7)=1661 : MENA(9)=3487
ED23:
End Proc
Procedure DAY24
D24G:
If GOB=1 Then Goto D24D
GOBA(1)=5865 : GOBA(2)=5786 : GOBA(4)=7151
GOBA(5)=6138 : GOBA(9)=3186
D24D:
If DWA=1 Then Goto D24E
DWAA(1)=2233 : DWAA(2)=2119 : DWAA(3)=3412
DWAA(4)=4414 : DWAA(5)=5024 : DWAA(6)=6951
DWAA(7)=4363 : DWAA(8)=5386 : DWAA(9)=6171
D24E:
If ELV=1 Then Goto D24M
ELVA(1)=2511 : ELVA(2)=1210 : ELVA(3)=2237
ELVA(4)=4056 : ELVA(5)=6179 : ELVA(6)=5986
ELVA(7)=1355 : ELVA(8)=1372 : ELVA(9)=3075
D24M:
If MEN=1 Then Goto ED24
MENA(2)=1112 : MENA(4)=4422 : MENA(5)=5024
MENA(6)=5453 : MENA(9)=3690
ED24:
End Proc
Procedure DAY25
D25G:
If GOB=1 Then Goto D25D
GOBA(1)=5970 : GOBA(2)=5986 : GOBA(4)=7151
GOBA(5)=5639 : GOBA(9)=3183
D25D:
If DWA=1 Then Goto D25E
DWAA(1)=1937 : DWAA(2)=1717 : DWAA(3)=3012
DWAA(4)=4914 : DWAA(5)=5524 : DWAA(6)=7151
DWAA(7)=4159 : DWAA(8)=5288 : DWAA(9)=6474
D25E:
If ELV=1 Then Goto D25M
ELVA(1)=2010 : ELVA(2)=912 : ELVA(3)=2233
ELVA(4)=4055 : ELVA(5)=6579 : ELVA(6)=5386
ELVA(7)=1256 : ELVA(8)=1170 : ELVA(9)=2969
D25M:
If MEN=1 Then Goto ED25
MENA(2)=912 : MENA(4)=4416 : MENA(5)=5426
MENA(6)=5554 : MENA(9)=4189
ED25:
End Proc
Procedure DAY26
D26G:
If GOB=1 Then Goto D26D
GOBA(1)=6171 : GOBA(2)=6190 : GOBA(4)=7157
GOBA(9)=3690
D26D:
If DWA=1 Then Goto D26E
DWAA(2)=1417 : DWAA(3)=2914
DWAA(4)=5115 : DWAA(5)=5726 : DWAA(6)=6653
DWAA(7)=4055 : DWAA(8)=5690 : DWAA(9)=6579
D26E:
If ELV=1 Then Goto D26M
ELVA(1)=2408 : ELVA(2)=714 : ELVA(3)=1937
ELVA(4)=4655 : ELVA(5)=6686 : ELVA(6)=5288
ELVA(7)=858 : ELVA(8)=1176 : ELVA(9)=2468
D26M:
If MEN=1 Then Goto ED26
MENA(2)=1008 : MENA(4)=4414 : MENA(5)=5726
MENA(6)=5953 : MENA(9)=4187
ED26:
End Proc
Procedure DAY27
D27G:
If GOB=1 Then Goto D27D
GOBA(1)=6672 : GOBA(2)=6588 : GOBA(4)=6860
GOBA(9)=3690
D27D:
If DWA=1 Then Goto D27E
DWAA(2)=1413 : DWAA(3)=2612
DWAA(4)=5310 : DWAA(5)=6326 : DWAA(6)=5953
DWAA(7)=4655 : DWAA(8)=5692 : DWAA(9)=6684
D27E:
If ELV=1 Then Goto D27M
ELVA(2)=917
ELVA(4)=4757 : ELVA(5)=6781 : ELVA(6)=5690
ELVA(7)=860 : ELVA(8)=1176 : ELVA(9)=2273
D27M:
If MEN=1 Then Goto ED27
MENA(2)=1607 : MENA(4)=4914 : MENA(5)=5632
MENA(6)=5947
ED27:
End Proc
Procedure DAY28
D28G:
If GOB=1 Then Goto D28D
GOBA(1)=6875 : GOBA(2)=6686 : GOBA(9)=4189
D28D:
If DWA=1 Then Goto D28E
DWAA(2)=1310 : DWAA(3)=2010
DWAA(4)=5410 : DWAA(5)=6430 : DWAA(6)=5554
DWAA(7)=4757 : DWAA(9)=6686
D28E:
If ELV=1 Then Goto D28M
ELVA(4)=5258 : ELVA(5)=7177 : ELVA(6)=5692
ELVA(7)=1461 : ELVA(8)=2079 : ELVA(9)=2776
D28M:
If MEN=1 Then Goto ED28
MENA(2)=2207 : MENA(4)=5115 : MENA(5)=6133
MENA(6)=6245
ED28:
End Proc
Procedure DAY29
D29G:
If GOB=1 Then Goto D29D
GOBA(1)=7177 : GOBA(2)=6389 : GOBA(9)=4187
D29D:
If DWA=1 Then Goto D29E
DWAA(2)=1210 : DWAA(3)=2408
DWAA(4)=6010 : DWAA(5)=6733 : DWAA(6)=6154
DWAA(7)=5259 : DWAA(9)=6680
D29E:
If ELV=1 Then Goto D29M
ELVA(4)=5263
ELVA(7)=1661 : ELVA(8)=2279 : ELVA(9)=3180
D29M:
If MEN=1 Then Goto ED29
MENA(2)=2408 : MENA(4)=5410 : MENA(5)=6733
MENA(6)=6445
ED29:
End Proc
Procedure DAY30
D30G:
If GOB=1 Then Goto D30D
GOBA(2)=5890
D30D:
If DWA=1 Then Goto D30E
DWAA(2)=911 : DWAA(4)=6310 : DWAA(5)=6133
DWAA(6)=6160 : DWAA(7)=5263 : DWAA(9)=6977
D30E:
If ELV=1 Then Goto D30M
ELVA(8)=2283 : ELVA(9)=3183
D30M:
If MEN=1 Then Goto ED30
MENA(4)=6010 : MENA(6)=6946
ED30:
End Proc
Procedure DAY31
D31G:
If GOB=1 Then Goto D31D
GOBA(2)=5692
D31D:
If DWA=1 Then Goto D31E
DWAA(2)=912 : DWAA(4)=6316 : DWAA(5)=5938
DWAA(6)=6760 : DWAA(9)=7177
D31E:
If ELV=1 Then Goto D31M
ELVA(8)=2288 : ELVA(9)=3088
D31M:
If MEN=1 Then Goto ED31
MENA(4)=6310 : MENA(6)=7151
ED31:
End Proc
Procedure DAY32
D32G:
If GOB=1 Then Goto D32D
D32D:
If DWA=1 Then Goto D32E
DWAA(2)=915 : DWAA(4)=6421 : DWAA(5)=5639
DWAA(6)=6860
D32E:
If ELV=1 Then Goto D32M
ELVA(8)=1787 : ELVA(9)=2788
D32M:
If MEN=1 Then Goto ED32
MENA(4)=6316 : MENA(6)=7056
ED32:
End Proc
Procedure DAY33
D33G:
If GOB=1 Then Goto D33D
D33D:
If DWA=1 Then Goto D33E
DWAA(2)=917 : DWAA(4)=6920
D33E:
If ELV=1 Then Goto D33M
ELVA(8)=1387 : ELVA(9)=3388
D33M:
If MEN=1 Then Goto ED33
MENA(4)=6421 : MENA(6)=7060
ED33:
End Proc
Procedure DAY34
D34G:
If GOB=1 Then Goto D34D
D34D:
If DWA=1 Then Goto D34E
DWAA(4)=6915
D34E:
If ELV=1 Then Goto D34M
ELVA(8)=1385 : ELVA(9)=3690
D34M:
If MEN=1 Then Goto ED34
MENA(4)=6817 : MENA(6)=6860
ED34:
End Proc
Procedure DAY35
D35G:
If GOB=1 Then Goto D35D
D35D:
If DWA=1 Then Goto D35E
D35E:
If ELV=1 Then Goto D35M
ELVA(9)=4189
D35M:
If MEN=1 Then Goto ED35
MENA(4)=6915
ED35:
End Proc
Procedure DAY36
D36G:
If GOB=1 Then Goto D36D
D36D:
If DWA=1 Then Goto D36E
D36E:
If ELV=1 Then Goto D36M
ELVA(9)=4188
D36M:
If MEN=1 Then Goto ED36
ED36:
End Proc
Procedure THEEND
Screen 1 : Print
Centre "THE THREE OTHER RACES HAVE AGREED TO A CEASEFIRE."
Print : Centre "DO YOU WISH TO CONTINUE THE WAR ? (Y/N)"
DEI:
A$=Inkey$
If A$="y" Then Goto RE
If A$="n" Then Goto EMESS
Goto DEI
EMESS:
Screen Close 1
Erase 1
Wait 50
Screen Open 0,640,240,2,Hires : Flash Off : Curs Off
Get Fonts : Set Font 3
Colour 0,$0 : Colour 1,$8F8
Ink 1,0 : Hide : Curs Off : Cls 0
Text 180,10,"THE WAR IS OVER !!!!!"
A$="THE GOBLINS" : B$="THE DWARVES" : C$="THE ELVES" : D$="THE HUMANS"
E$=" REIGN SUPREME." : F$=" ARE NOW THE SUPERIOR RACE."
G$=" HAVE MANAGED TO SURVIVE THE WAR." : H$=" HAVE BEEN DEFEATED."
I$=" HAVE BEEN TOTALLY DEFEATED. A FEW"
J$="REMAIN IN HIDING REBUILDING THEIR SHATTERED LIVES." : Z$="THEY NOW HOLD"
For A=1 To 18
If G(A)>0 and A<4 Then Inc GC : Add GOP,3
If G(A)>0 and A>3 and A<9 Then Inc GT : Add GOP,2
If G(A)>0 and A>8 Then Inc GV : Add GOP,1
If D(A)>0 and A<4 Then Inc DC : Add DWP,3
If D(A)>0 and A>3 and A<9 Then Inc DT : Add DWP,2
If D(A)>0 and A>8 Then Inc DV : Add DWP,1
If E(A)>0 and A<4 Then Inc EC : Add ELP,3
If E(A)>0 and A>3 and A<9 Then Inc ET : Add ELP,2
If E(A)>0 and A>8 Then Inc EV : Add ELP,1
If M(A)>0 and A<4 Then Inc MC : Add MEP,3
If M(A)>0 and A>3 and A<9 Then Inc MT : Add MEP,2
If M(A)>0 and A>8 Then Inc MV : Add MEP,1
Next A
GOB:
If GOP=0 Then Text 1,40,A$+I$ : Text 1,52,J$ : Goto DWA
X1=GC : X2=GT : X3=GV : Gosub WORKOUT
Text 1,55,Z$
If GOP<DWP or GOP<ELP or GOP<MEP Then Goto GOB1 Else Goto GOB2
GOB1:
Text 1,40,A$+H$ : Goto DWA
GOB2:
If GOP>DWP and GOP>ELP and GOP>MEP Then Goto GOB3
Text 1,40,A$+G$ : Goto DWA
GOB3:
If DWP=0 and ELP=0 and MEP=0 Then Text 1,40,A$+E$ : Goto DWA
Text 1,40,A$+F$
DWA:
Z$=""
If DWP=0 Then Text 1,85,B$+I$ : Text 1,100,J$ : Goto ELV
X1=DC : X2=DT : X3=DV : Gosub WORKOUT
Text 1,100,Z$
If DWP<GOP or DWP<ELP or DWP<MEP Then Goto DWA1 Else Goto DWA2
DWA1:
Text 1,85,B$+H$ : Goto ELV
DWA2:
If DWP>GOP and DWA>ELP and DWA>MEP Then Goto DWA3
Text 1,85,B$+G$ : Goto ELV
DWA3:
If GOP=0 and ELP=0 and MEP=0 Then Text 1,85,B$+E$ : Goto ELV
Text 1,85,B$+F$
ELV:
Z$=""
If ELP=0 Then Text 1,130,C$+I$ : Text 1,145,J$ : Goto MEN
X1=EC : X2=ET : X3=EV : Gosub WORKOUT
Text 1,145,Z$
If ELP<GOP or ELP<DWP or ELP<MEP Then Goto ELV1 Else Goto ELV2
ELV1:
Text 1,130,C$+H$ : Goto MEN
ELV2:
If ELP>GOP and ELP>DWP and ELP>MEP Then Goto ELV3
Text 1,130,C$+G$ : Goto MEN
ELV3:
If GOP=0 and DWP=0 and MEP=0 Then Text 1,130,C$+E$ : Goto MEN
Text 1,130,C$+F$
MEN:
Z$=""
If MEP=0 Then Text 1,175,D$+I$ : Text 1,190,J$ : Goto BYE
X1=MC : X2=MT : X3=MV : Gosub WORKOUT
Text 1,190,Z$
If MEP<GOP or MEP<DWP or MEP<ELP Then Goto MEN1 Else Goto MEN2
MEN1:
Text 1,175,D$+H$ : Goto BYE
MEN2:
If MEP>GOP and MEP>DWP and MEP>ELP Then Goto MEN3
Text 1,175,D$+G$ : Goto BYE
MEN3:
If GOP=0 and DWP=0 and ELP=0 Then Text 1,175,D$+E$ : Goto BYE
Text 1,175,D$+F$ : Goto BYE
WORKOUT:
If X1=1 Then W$=" CITY, " Else W$=" CITIES, "
If X2=1 Then X$=" TOWN AND" Else X$=" TOWNS AND "
If X3=1 Then Y$=" VILLAGE." Else Y$=" VILLAGES."
Z$="THEY NOW HOLD"+Str$(X1)+W$+Str$(X2)+X$+Str$(X3)+Y$
Return
BYE:
Do
Loop
RE:
Ink 3 : Bar 0,0 To 640,114
Screen Open 0,320,119,16,Lowres : Flash Off : Curs Off
OP=8
Proc MAIN
End Proc
Procedure KEEPIT
Ink 3 : Bar 224,0 To 640,114 : Ink 9
Bar 280,16 To 577,100 : Ink 0,9 : Box 280,16 To 577,100
Text 292,37," THIS OPTION IS ONLY"
Text 292,50," AVAILABLE"
Text 292,65," IN THE FULL SCALE"
Text 292,80," VERSION OF THIS GAME."
FFFF:
M=Mouse Click
If M=0 Then Goto FFFF
OP=0 : BLIP=1 : Sprite Off : Ink 3 : Bar 224,0 To 640,114
End Proc
Procedure FETCHIT
Ink 3 : Bar 224,0 To 640,114 : Ink 9
Bar 280,16 To 577,100 : Ink 0,9 : Box 280,16 To 577,100
Text 292,37," THIS OPTION IS ONLY"
Text 292,50," AVAILABLE"
Text 292,65," IN THE FULL SCALE"
Text 292,80," VERSION OF THIS GAME."
GGGG:
M=Mouse Click
If M=0 Then Goto GGGG
OP=0 : BLIP=1 : Sprite Off : Ink 3 : Bar 224,0 To 640,114
End Proc